Returns the nth element of an array.
Use Array.prototype.slice() to get an array containing the nth element at the first place.
If the index is out of bounds, return undefined.
Omit the second argument, n, to get the first element of the array.
返回陣列的 第n個元素
用 Array.prototype.slice() 拿到 包含第n個元素的陣列 陣列長度為1,如果超出陣列範圍 會返回一個[] 如果省略參數n 會默認獲取第一個元素
const nthElement = (arr, n = 0) => (n === -1 ? arr.slice(n) : arr.slice(n, n + 1))[0];
EXAMPLES
nthElement(['a', 'b', 'c'], 1); // 'b'
nthElement(['a', 'b', 'b'], -3); // 'a'
1.slice()
slice() 方法可以任意截取出陣列的一部分
對象:
可操控Array及String
let languages = ["JavaScript", "Python", "C", "C++", "Java"];
//可以淺拷貝
let new_arr = languages.slice();
console.log(new_arr); // [ 'JavaScript', 'Python', 'C', 'C++', 'Java' ]
let new_arr1 = languages.slice(2);
console.log(new_arr1); // [ 'C', 'C++', 'Java' ]
// slicing from the second element to fourth element
let new_arr2 = languages.slice(1, 4);
console.log(new_arr2); // [ 'Python', 'C', 'C++' ]
可使用負數索引,表示由陣列的最末項開始提取。slice(-2) 代表拷貝陣列中的最後兩個元素。
[ 'JavaScript', 'Python', 'C', 'C++', 'Java' ]
[ 'C', 'C++', 'Java' ]
[ 'Python', 'C', 'C++' ]